package util.android.widgets;

import util.android.ViewUtil;
import util.android.form.respuesta.EditTextInput2;

import com.androidutil.R;

import android.content.Context;
import android.content.res.TypedArray;
import android.util.AttributeSet;
import android.view.View;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.TextView;

public class String2View 
extends AbstractView2<EditTextInput2,String2View>
{
	private final LinearLayout layout;
	
	private final LinearLayout layoutValor1;
	private final TextView tvEtiquetaValor1;
	private final TextView tvSeparador;
	
	private final LinearLayout layoutValor2;
	private final TextView tvEtiquetaValor2;
		
	public String2View(Context context, AttributeSet attrs) {
		super(context, attrs);
		tvSeparador = (TextView)this.getLayoutRespuesta().findViewWithTag("separador");
		
		tvEtiquetaValor1 = (TextView)this.getLayoutRespuesta().findViewWithTag("etiqueta_valor1");
		tvEtiquetaValor1.setText("");
		
		tvEtiquetaValor2 = (TextView)this.getLayoutRespuesta().findViewWithTag("etiqueta_valor2");
		tvEtiquetaValor2.setText("");
		
		layout = (LinearLayout) this.getLayoutRespuesta().findViewWithTag("layout");
		layoutValor1 = (LinearLayout) this.getLayoutRespuesta().findViewWithTag("layout_valor1");
		layoutValor2 = (LinearLayout) this.getLayoutRespuesta().findViewWithTag("layout_valor2");
		
		
		TypedArray ta = context.obtainStyledAttributes(attrs, R.styleable.AbstractView, 0, 0);
	    try {
	        String etiqueta;
	        
	        etiqueta = ta.getString(R.styleable.AbstractView_subetiqueta1);
	        setSubEtiqueta1(etiqueta);
	        
	        etiqueta = ta.getString(R.styleable.AbstractView_subetiqueta2);
	        setSubEtiqueta2(etiqueta);	        
	    } finally {
	        ta.recycle();
	    }
	}
	
	
	@Override
	protected EditTextInput2 crearInput_agregarVistas() {
		LinearLayout ly = (LinearLayout)View.inflate(getContext(), R.layout.view_string2, null);
		EditTextInput2 inTextView2 = new EditTextInput2(
				(EditText)ly.findViewWithTag("valor1"),
				(EditText)ly.findViewWithTag("valor2"));		
		//inTextView2.setValor("","");
		//TextView tvSeparador = (TextView)ly.findViewWithTag("separador");		
		
		ViewUtil.addViewMatch_Wrap(this.getLayoutRespuesta(), ly);
		//lyRespuesta.addView(ly);
		
		return inTextView2;
	}
	
	public String2View setSubEtiqueta1ByStringId(int etiquetaID) {
		tvEtiquetaValor1.setText(this.getResources().getString(etiquetaID));
		return this;
	}
	
	public String2View setSubEtiqueta1(String etiqueta) {
		tvEtiquetaValor1.setText(etiqueta);
		return this;
	}
	

	public String2View setSubEtiqueta2ByStringId(int etiquetaID) {
		tvEtiquetaValor2.setText(this.getResources().getString(etiquetaID));
		return this;
	}
	
	public String2View setSubEtiqueta2(String etiqueta) {
		tvEtiquetaValor2.setText(etiqueta);
		return this;
	}
	
	public String2View setSeparador(String separador) {
		tvSeparador.setText(separador);
		return this;
	}
	
	public String2View setOrientacionVertical() {		
		layout.setOrientation(LinearLayout.VERTICAL);
		
		LinearLayout.LayoutParams params = new LayoutParams(
				LinearLayout.LayoutParams.MATCH_PARENT, 
				LinearLayout.LayoutParams.WRAP_CONTENT
		);
		layoutValor1.setLayoutParams(params);
		layoutValor2.setLayoutParams(params);
		
		return this;
	}
	

}
